function gefDemo() {
    var shell = document.getElementById('shell');

    var buttonModel = new ADF.model.ButtonModel();
    buttonModel.setText('ADF按钮');
    buttonModel.setBounds(new COM.draw2d.Rectangle(-1, -1, 66, 36));

    var labelModel=new ADF.model.LabelModel();
    labelModel.setText('ADF标签');
    labelModel.setBounds(new COM.draw2d.Rectangle(-1,-1,70,30));

    var inputModel=new ADF.model.InputModel();
    inputModel.setText('ADF输入');
    inputModel.setBounds(new COM.draw2d.Rectangle(-1,-1,100,35));

    var textareaModel=new ADF.model.TextAreaModel();
    textareaModel.setText('ADF文本域');
    textareaModel.setBounds(new COM.draw2d.Rectangle(-1,-1,200,100));

    var bcpLabelModel=new BCP.bill.model.LabelModel();
    bcpLabelModel.setText("BCP标签");
    bcpLabelModel.setBounds(new COM.draw2d.Rectangle(-1,-1,70,30));

    var bcpButtonModel=new BCP.bill.model.ButtonModel();
    bcpButtonModel.setText("BCP按钮");
    bcpButtonModel.setBounds(new COM.draw2d.Rectangle(-1,-1,66,36));

    var bcpInputModel=new BCP.bill.model.InputModel();
    bcpInputModel.setText("BCP输入");
    bcpInputModel.setBounds(new COM.draw2d.Rectangle(-1,-1,100,35));

    var bcpTextAreaModel=new BCP.bill.model.TextAreaModel();
    bcpTextAreaModel.setText("BCP文本域");
    bcpTextAreaModel.setBounds(new COM.draw2d.Rectangle(-1,-1,200,100));

    var containerModel = new ADF.model.XYCompositeModel();
    containerModel.setBounds(new COM.draw2d.Rectangle(-1, -1, 200, 200));

    var bundles = [
        new ADF.control.Diagram(),
        new ADF.control.Button(),
        new ADF.control.Input(),
        new ADF.control.Label(),
        new ADF.control.TextArea(),
        new ADF.control.XYComposite(),
		new BCP.bill.control.Diagram(),
		new BCP.bill.control.Label(),
        new BCP.bill.control.Button(),
        new BCP.bill.control.Input(),
        new BCP.bill.control.TextArea(),
        new ADF.tool.CreationGroup(),
        new ADF.tool.ContainerGroup(),
        new ADF.tool.SelectionGroup(),
        new ADF.tool.SelectionTool(),
        new ADF.tool.MarqueeSelectionTool(),
        new ADF.tool.ContainerTool(containerModel, "XYComposite"),
        new ADF.tool.CreationTool(buttonModel, "Button"),
        new ADF.tool.CreationTool(labelModel,"Label"),
        new ADF.tool.CreationTool(inputModel,"Input"),
        new ADF.tool.CreationTool(textareaModel,"TextArea"),
        new ADF.tool.CreationTool(bcpLabelModel,"BCPLabel"),
        new ADF.tool.CreationTool(bcpButtonModel,"BCPButton"),
        new ADF.tool.CreationTool(bcpInputModel,"BCPInput"),
        new ADF.tool.CreationTool(bcpTextAreaModel,"BCPTextArea"),
        new ADF.property.BaseGroup("基本属性"),
        new ADF.action.UndoAction(),
        new ADF.action.RedoAction(),
        new ADF.action.DeleteAction(),
        new ADF.action.TopAction(),
        new ADF.action.BottomAction()
    ];


    var contentsJSONString = "{\"modelType\":\"BCP.bill.model.DiagramModel\",\"children\":[\"{\\\"modelType\\\":\\\"ADF.model.ButtonModel\\\",\\\"text\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"text\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"文本\\\\\\\",\\\\\\\"value\\\\\\\":\\\\\\\"Button1\\\\\\\",\\\\\\\"defaultValue\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editable\\\\\\\":true,\\\\\\\"editorType\\\\\\\":\\\\\\\"baseProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\",\\\"bounds\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"value\\\\\\\":{\\\\\\\"x\\\\\\\":226,\\\\\\\"y\\\\\\\":51,\\\\\\\"width\\\\\\\":145,\\\\\\\"height\\\\\\\":34},\\\\\\\"defaultValue\\\\\\\":null,\\\\\\\"editable\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editorType\\\\\\\":\\\\\\\"boundsProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\"}\",\"{\\\"modelType\\\":\\\"ADF.model.ButtonModel\\\",\\\"text\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"text\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"文本\\\\\\\",\\\\\\\"value\\\\\\\":\\\\\\\"Button2\\\\\\\",\\\\\\\"defaultValue\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editable\\\\\\\":true,\\\\\\\"editorType\\\\\\\":\\\\\\\"baseProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\",\\\"bounds\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"value\\\\\\\":{\\\\\\\"x\\\\\\\":457,\\\\\\\"y\\\\\\\":49,\\\\\\\"width\\\\\\\":157,\\\\\\\"height\\\\\\\":34},\\\\\\\"defaultValue\\\\\\\":null,\\\\\\\"editable\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editorType\\\\\\\":\\\\\\\"boundsProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\"}\",\"{\\\"modelType\\\":\\\"ADF.model.ButtonModel\\\",\\\"text\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"text\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"文本\\\\\\\",\\\\\\\"value\\\\\\\":\\\\\\\"按钮3\\\\\\\",\\\\\\\"defaultValue\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editable\\\\\\\":true,\\\\\\\"editorType\\\\\\\":\\\\\\\"baseProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\",\\\"bounds\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"value\\\\\\\":{\\\\\\\"x\\\\\\\":227,\\\\\\\"y\\\\\\\":118,\\\\\\\"width\\\\\\\":146,\\\\\\\"height\\\\\\\":34},\\\\\\\"defaultValue\\\\\\\":null,\\\\\\\"editable\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editorType\\\\\\\":\\\\\\\"boundsProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\"}\",\"{\\\"modelType\\\":\\\"ADF.model.ButtonModel\\\",\\\"text\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"text\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"文本\\\\\\\",\\\\\\\"value\\\\\\\":\\\\\\\"按钮4\\\\\\\",\\\\\\\"defaultValue\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editable\\\\\\\":true,\\\\\\\"editorType\\\\\\\":\\\\\\\"baseProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\",\\\"bounds\\\":\\\"{\\\\\\\"key\\\\\\\":null,\\\\\\\"name\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"bounds\\\\\\\",\\\\\\\"value\\\\\\\":{\\\\\\\"x\\\\\\\":457,\\\\\\\"y\\\\\\\":121,\\\\\\\"width\\\\\\\":155,\\\\\\\"height\\\\\\\":34},\\\\\\\"defaultValue\\\\\\\":null,\\\\\\\"editable\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"editorType\\\\\\\":\\\\\\\"boundsProperty.defaultTextEditor\\\\\\\",\\\\\\\"serializable\\\\\\\":true}\\\"}\"]}";
    // var button1 = new ADF.model.ButtonModel();
    // button1.setText('按钮1');
    // button1.setBounds(new COM.draw2d.Rectangle(60, 60, 60, 34));

    // var button2 = new ADF.model.ButtonModel();
    // button2.setText('按钮2');
    // button2.setBounds(new COM.draw2d.Rectangle(60, 120, 60, 34));

    // var button3 = new ADF.model.ButtonModel();
    // button3.setText('按钮3');
    // button3.setBounds(new COM.draw2d.Rectangle(60, 180, 60, 34));

    // var input = new ADF.model.InputModel();
    // input.setText('输入1');
    // input.setBounds(new COM.draw2d.Rectangle(60, 240, 60, 34));

    // var diagram = new ADF.model.DiagramModel();
    // diagram.addChild(button1);
    // diagram.addChild(button2);
    // diagram.addChild(button3);
    // diagram.addChild(input);
    console.log(JSON.parse(contentsJSONString));
    var designer = new ADF.Designer(shell, contentsJSONString, bundles);
    designer.open();
    window.designer = designer;
}
